home *** CD-ROM | disk | FTP | other *** search
/ Cre@te Online 2000 December / Cre@teOnline CD05.iso / MacSoft / XML ConsoleMax.sea / XML ConsoleMax / Required / esc.jar / com / extensibility / xml / ContentModelTerm$2$EffTermEnum.class (.txt) < prev    next >
Encoding:
Java Class File  |  2000-06-30  |  1.6 KB  |  59 lines

  1. package com.extensibility.xml;
  2.  
  3. import com.extensibility.util.BasicEnumerator;
  4. import java.util.Enumeration;
  5.  
  6. class ContentModelTerm$2$EffTermEnum extends BasicEnumerator implements ContentModelTermEnum {
  7.    // $FF: synthetic field
  8.    final ContentModelTerm this$0;
  9.    // $FF: renamed from: e java.util.Enumeration
  10.    Enumeration field_0;
  11.    // $FF: renamed from: e2 java.util.Enumeration
  12.    Enumeration field_1;
  13.    int[] occCarryForward;
  14.  
  15.    ContentModelTerm$2$EffTermEnum(ContentModelTerm var1) {
  16.       this.this$0 = var1;
  17.       this.field_0 = this.this$0.terms();
  18.       this.occCarryForward = null;
  19.    }
  20.  
  21.    protected Object getNext() {
  22.       while(true) {
  23.          if (this.field_1 != null) {
  24.             if (this.field_1.hasMoreElements()) {
  25.                ContentModelTerm var3 = (ContentModelTerm)this.field_1.nextElement();
  26.                if (this.occCarryForward != null) {
  27.                   return ContentModelTerm.access$1000171(var3, this.occCarryForward);
  28.                }
  29.  
  30.                return var3;
  31.             }
  32.  
  33.             this.occCarryForward = null;
  34.          }
  35.  
  36.          if (!this.field_0.hasMoreElements()) {
  37.             return null;
  38.          }
  39.  
  40.          Object var1 = this.field_0.nextElement();
  41.          ContentModelTerm var2 = (ContentModelTerm)var1;
  42.          if (ContentModelTerm.access$1000271(var2)) {
  43.             this.field_1 = ContentModelTerm.access$1000071(var2);
  44.          } else {
  45.             if (!var2.isOccuranceOnly()) {
  46.                return var1;
  47.             }
  48.  
  49.             this.field_1 = ContentModelTerm.access$1000071(var2);
  50.             this.occCarryForward = new int[]{var2.getMinOccurance(), var2.getMaxOccurance()};
  51.          }
  52.       }
  53.    }
  54.  
  55.    public ContentModelTerm nextContentModelTerm() {
  56.       return (ContentModelTerm)((BasicEnumerator)this).nextElement();
  57.    }
  58. }
  59.